(function () {
    // 定义一个人的类
    var Person = /** @class */ (function () {
        function Person(name, age) {
            this.age = age;
            this.name = name;
        }
        Object.defineProperty(Person.prototype, "getName2", {
            get: function () {
                return this.name;
            },
            enumerable: false,
            configurable: true
        });
        return Person;
    }());
    var per1 = new Person("张三", 20);
    console.log(per1);
    per1.name = "李四";
    // per1.age = 20 ,这里改不了了，因为age是私有属性
    console.log(per1);
    // 现在对象的值能随便改，会导致数据不安全
    // ts可以在属性前加修饰符，public(默认),private(私有属性，只能在类里改和读)，你可以暴露修改(查看)这个值的方法
    // ts中可以用get修饰方法，然后你对象.方法名(不加引号)就能直接调用这个方法
    console.log(per1.getName2);
})();
